package com.deyuanyun.pic.pbf.app.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.deyuanyun.pic.common.util.ObjectUtil;
import com.deyuanyun.pic.common.util.StringUtils;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description 钢质环氧套筒补强修复
 * @author Jerry
 * @date 2016-06-30
 */
public class PostSteelEpoxySleeve extends BaseDTO{
    /**
     * 主键
     */
    private String id;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 创建人
     */
    @JSONField(name ="UserID")
    private String createUser;

    /**
     * 创建备注
     */
    @JSONField (name ="Remark")
    private String createRemark;

    /**
     * 更新时间
     */
    private Date updateDate;

    /**
     * 更新人员
     */
    private String updateUser;

    /**
     * 更新原因
     */
    private String updateRemark;

    /**
     * 逻辑删除字段
     */
    private Short deleted;

    /**
     * 版本
     */
    private Short vsersion;

    /**
     * 管沟ID
     */
    @JSONField(name ="ProcessID")
    private String trenchId;

    /**
     * 套筒结构：侧法兰连接；侧焊缝连接
     */
    @JSONField(name ="StructureId")
    private String socketStructure;

    /**
     * 材质
     */
    @JSONField(name ="MaterialId")
    private String material;
    /**
     * 套筒尺寸-壁厚（mm）
     */
    @JSONField(name ="Thick")
    private BigDecimal wallThickness;

    /**
     * 套筒尺寸-外径（mm）
     */
    @JSONField(name ="OD")
    private BigDecimal od;

    /**
     * 修复长度（mm）
     */
    @JSONField(name ="Length")
    private BigDecimal repairLength;

    /**
     * 环境温度（℃）
     */
    @JSONField(name ="EnvTemperature")
    private BigDecimal environmentalTemperature;

    /**
     * 管表温度（℃）
     */
    @JSONField(name ="SurfaceTemperature")
    private BigDecimal surfaceTemperature;

    /**
     * 灌注工艺
     */
    @JSONField(name ="PerfusionProcess")
    private String perfusionProcess;

    /**
     * 工作量
     */
    @JSONField(name ="WorkLoad")
    private String workload;

    /**
     * 生产厂商
     */
    private String manufacturer;

    /**
     * 记录人
     */
    private String recrder;

    /**
     * 记录时间
     */
    private Date recordTime;

    /**
     * @return 主键
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     *            主键
     */
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    /**
     * @return 创建时间
     */
    public Date getCreateDate() {
        return createDate;
    }

    /**
     * @param createDate
     *            创建时间
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    /**
     * @return 创建人
     */
    public String getCreateUser() {
        return createUser;
    }

    /**
     * @param createUser
     *            创建人
     */
    public void setCreateUser(String createUser) {
        this.createUser = createUser == null ? null : createUser.trim();
    }

    /**
     * @return 创建备注
     */
    public String getCreateRemark() {
        return createRemark;
    }

    /**
     * @param createRemark
     *            创建备注
     */
    public void setCreateRemark(String createRemark) {
        this.createRemark = createRemark == null ? null : createRemark.trim();
    }

    /**
     * @return 更新时间
     */
    public Date getUpdateDate() {
        return updateDate;
    }

    /**
     * @param updateDate
     *            更新时间
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    /**
     * @return 更新人员
     */
    public String getUpdateUser() {
        return updateUser;
    }

    /**
     * @param updateUser
     *            更新人员
     */
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser == null ? null : updateUser.trim();
    }

    /**
     * @return 更新原因
     */
    public String getUpdateRemark() {
        return updateRemark;
    }

    /**
     * @param updateRemark
     *            更新原因
     */
    public void setUpdateRemark(String updateRemark) {
        this.updateRemark = updateRemark == null ? null : updateRemark.trim();
    }

    /**
     * @return 逻辑删除字段
     */
    public Short getDeleted() {
        return deleted;
    }

    /**
     * @param deleted
     *            逻辑删除字段
     */
    public void setDeleted(Short deleted) {
        this.deleted = deleted;
    }

    /**
     * @return 版本
     */
    public Short getVsersion() {
        return vsersion;
    }

    /**
     * @param vsersion
     *            版本
     */
    public void setVsersion(Short vsersion) {
        this.vsersion = vsersion;
    }

    /**
     * @return 管沟ID
     */
    public String getTrenchId() {
        if(StringUtils.isNotEmpty(getProjectId())){
            return trenchId;
        }
        return null;
    }

    /**
     * @param trenchId
     *            管沟ID
     */
    public void setTrenchId(String trenchId) {
        this.trenchId = trenchId == null ? null : trenchId.trim();
    }

    /**
     * @return 套筒结构：侧法兰连接；侧焊缝连接
     */
    public String getSocketStructure() {
        return socketStructure;
    }

    /**
     * @param socketStructure
     *            套筒结构：侧法兰连接；侧焊缝连接
     */
    public void setSocketStructure(String socketStructure) {
        this.socketStructure = socketStructure == null ? null : socketStructure.trim();
    }

    /**
     * @return 材质
     */
    public String getMaterial() {

        return ObjectUtil.isNotNullEmpty(material.split("#"))? material.split("#")[1] :null;
    }

    /**
     * @param material
     *            材质
     */
    public void setMaterial(String material) {
        this.material = material == null ? null : material.trim();
    }

    /**
     * @return 套筒尺寸-壁厚（mm）
     */
    public BigDecimal getWallThickness() {
        return wallThickness;
    }

    /**
     * @param wallThickness
     *            套筒尺寸-壁厚（mm）
     */
    public void setWallThickness(BigDecimal wallThickness) {
        this.wallThickness = wallThickness;
    }

    /**
     * @return 套筒尺寸-外径（mm）
     */
    public BigDecimal getOd() {
        return od;
    }

    /**
     * @param od
     *            套筒尺寸-外径（mm）
     */
    public void setOd(BigDecimal od) {
        this.od = od;
    }

    /**
     * @return 修复长度（mm）
     */
    public BigDecimal getRepairLength() {
        return repairLength;
    }

    /**
     * @param repairLength
     *            修复长度（mm）
     */
    public void setRepairLength(BigDecimal repairLength) {
        this.repairLength = repairLength;
    }

    /**
     * @return 环境温度（℃）
     */
    public BigDecimal getEnvironmentalTemperature() {
        return environmentalTemperature;
    }

    /**
     * @param environmentalTemperature
     *            环境温度（℃）
     */
    public void setEnvironmentalTemperature(BigDecimal environmentalTemperature) {
        this.environmentalTemperature = environmentalTemperature;
    }

    /**
     * @return 管表温度（℃）
     */
    public BigDecimal getSurfaceTemperature() {
        return surfaceTemperature;
    }

    /**
     * @param surfaceTemperature
     *            管表温度（℃）
     */
    public void setSurfaceTemperature(BigDecimal surfaceTemperature) {
        this.surfaceTemperature = surfaceTemperature;
    }

    /**
     * @return 灌注工艺
     */
    public String getPerfusionProcess() {
        return perfusionProcess;
    }

    /**
     * @param perfusionProcess
     *            灌注工艺
     */
    public void setPerfusionProcess(String perfusionProcess) {
        this.perfusionProcess = perfusionProcess == null ? null : perfusionProcess.trim();
    }

    /**
     * @return 工作量
     */
    public String getWorkload() {
        return workload;
    }

    /**
     * @param workload
     *            工作量
     */
    public void setWorkload(String workload) {
        this.workload = workload == null ? null : workload.trim();
    }

    /**
     * @return 生产厂商
     */
    public String getManufacturer() {
        return manufacturer;
    }

    /**
     * @param manufacturer
     *            生产厂商
     */
    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer == null ? null : manufacturer.trim();
    }

    /**
     * @return 记录人
     */
    public String getRecrder() {
        return recrder;
    }

    /**
     * @param recrder
     *            记录人
     */
    public void setRecrder(String recrder) {
        this.recrder = recrder == null ? null : recrder.trim();
    }

    /**
     * @return 记录时间
     */
    public Date getRecordTime() {
        return recordTime;
    }

    /**
     * @param recordTime
     *            记录时间
     */
    public void setRecordTime(Date recordTime) {
        this.recordTime = recordTime;
    }

}
